package com.bot.nft.module.dc.domain.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * 藏品信息业务模型
 */
@Data
public class DcNftInfoVo {

    /**
     * 藏品信息标识id
     */
    String id;

    /**
     * 藏品名称
     */
    String name;

    /**
     * 藏品封面
     */
    String cover;

    /**
     * 藏品封面
     */
    String coverName;

    /**
     * 藏品描述
     */
    String remark;

    /**
     * 藏品最低发售价格
     */
    String lowPrice;

    /**
     * 藏品最高发售价格
     */
    String highPrice;

    /**
     * 藏品发售价格
     */
    BigDecimal price;

    /**
     * 藏品库存
     */
    String inventory;

    /**
     * 藏品发行数量
     */
    String publishNum;

    /**
     * 藏品限购数量【定额】
     */
    String quota;

    /**
     * 藏品发行类型
     */
    String type;

    /**
     * 藏品类型
     */
    String types;

    /**
     * 开放二级市场时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    Date openTime;

    /**
     * 发售时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    Date saleTime;

    /**
     * 是否对外发售
     */
    String externalSales;

    /**
     * 白名单结束时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    Date whiteEnd;

    /**
     * 全民结束是时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    Date endTime;

    /**
     * 藏品状态
     */
    String status;

    /**
     * 链上标识
     */
    String contract;

    /**
     * 创建人
     */
    String createUser;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    Date createTime;

    /**
     * 更新人
     */
    String updateUser;

    /**
     * 更新时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    Date updateTime;

    /**
     * 创作者Id
     */
    String authorId;

    /**
     * 创作者名称
     */
    String autName;

    /**
     * 创作者头像
     */
    String photo;
    /**
     * 藏品展示板块
     */
    List<DcNftDictVo> nftDictVos;
    /**
     * 创作者信息
     */
    DcAuthorInfoVo authorDcInfoVo;
    /**
     * 板块
     */
    private List<String> plates;

    /**
     * 是否展示
     */
    private Integer nftShow;

    /**
     * 是否展示
     */
    private Boolean showNft;

}
